<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/AdventureWorks.Services" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/AdventureWorks.Services" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:1330/EmployeeService.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import schemaLocation="http://localhost:1330/EmployeeService.svc?xsd=xsd4" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:complexType name="EmployeeKey">
    <xs:sequence>
      <xs:element minOccurs="0" name="EmployeeId" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="EmployeeKey" nillable="true" type="tns:EmployeeKey" />
  <xs:complexType name="Employee_ReadOutput">
    <xs:sequence>
      <xs:element minOccurs="0" name="BirthDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Contact" nillable="true" type="tns:ContactInfo" />
      <xs:element minOccurs="0" name="CurrentFlag" type="xs:boolean" />
      <xs:element minOccurs="0" name="Gender" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="HireDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Login" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Manager" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="MaritalStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ModifiedDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="NationalIDNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="PayHistory" nillable="true" type="tns:ArrayOfEmployee_ReadOutput_PayHistory" />
      <xs:element minOccurs="0" name="Rowguid" type="ser:guid" />
      <xs:element minOccurs="0" name="SalariedFlag" type="xs:boolean" />
      <xs:element minOccurs="0" name="SickLeaveHours" type="xs:short" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VacationHours" type="xs:short" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Employee_ReadOutput" nillable="true" type="tns:Employee_ReadOutput" />
  <xs:complexType name="ContactInfo">
    <xs:sequence>
      <xs:element minOccurs="0" name="EmailAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="MiddleName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Phone" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ContactInfo" nillable="true" type="tns:ContactInfo" />
  <xs:complexType name="ArrayOfEmployee_ReadOutput_PayHistory">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Employee_ReadOutput_PayHistory" nillable="true" type="tns:Employee_ReadOutput_PayHistory" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfEmployee_ReadOutput_PayHistory" nillable="true" type="tns:ArrayOfEmployee_ReadOutput_PayHistory" />
  <xs:complexType name="Employee_ReadOutput_PayHistory">
    <xs:sequence>
      <xs:element minOccurs="0" name="PayFrequency" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Rate" nillable="true" type="xs:decimal" />
      <xs:element minOccurs="0" name="RateChangeDate" nillable="true" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Employee_ReadOutput_PayHistory" nillable="true" type="tns:Employee_ReadOutput_PayHistory" />
  <xs:complexType name="Employee_UpdateInput">
    <xs:sequence>
      <xs:element minOccurs="0" name="BirthDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Contact" nillable="true" type="tns:ContactInfo" />
      <xs:element minOccurs="0" name="CurrentFlag" type="xs:boolean" />
      <xs:element minOccurs="0" name="EmployeeId" type="xs:int" />
      <xs:element minOccurs="0" name="Gender" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="HireDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Login" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Manager" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="MaritalStatus" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NationalIDNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SalariedFlag" type="xs:boolean" />
      <xs:element minOccurs="0" name="SickLeaveHours" type="xs:short" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VacationHours" type="xs:short" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Employee_UpdateInput" nillable="true" type="tns:Employee_UpdateInput" />
  <xs:complexType name="Employee_ReadListInput">
    <xs:sequence>
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FirstNameOperator" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="HireDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="HireDate2" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="HireDateOperator" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ManagerLastName" nillable="true" type="xs:string" />
      <xs:element xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="State" nillable="true" type="q1:ArrayOfint" />
      <xs:element minOccurs="0" name="StateOperator" nillable="true" type="xs:string" />
      <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="Zipcode" nillable="true" type="q2:ArrayOfstring" />
      <xs:element minOccurs="0" name="ZipcodeOperator" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Employee_ReadListInput" nillable="true" type="tns:Employee_ReadListInput" />
  <xs:complexType name="ArrayOfEmployee_ReadListOutput">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Employee_ReadListOutput" nillable="true" type="tns:Employee_ReadListOutput" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfEmployee_ReadListOutput" nillable="true" type="tns:ArrayOfEmployee_ReadListOutput" />
  <xs:complexType name="Employee_ReadListOutput">
    <xs:sequence>
      <xs:element minOccurs="0" name="Address" nillable="true" type="tns:Address" />
      <xs:element minOccurs="0" name="Current" type="xs:boolean" />
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Gender" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="HireDate" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Id" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Manager" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Salaried" nillable="true" type="xs:boolean" />
      <xs:element minOccurs="0" name="StateId" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Employee_ReadListOutput" nillable="true" type="tns:Employee_ReadListOutput" />
  <xs:complexType name="Address">
    <xs:sequence>
      <xs:element minOccurs="0" name="City" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Country" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="State" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StreetAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Zipcode" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Address" nillable="true" type="tns:Address" />
  <xs:complexType name="ArrayOfState">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="State" nillable="true" type="tns:State" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfState" nillable="true" type="tns:ArrayOfState" />
  <xs:complexType name="State">
    <xs:sequence>
      <xs:element minOccurs="0" name="CountryRegionCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StateProvinceCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StateProvinceId" nillable="true" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="State" nillable="true" type="tns:State" />
  <xs:complexType name="ArrayOfEmployeePayHistory_ReadListOutput">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="EmployeePayHistory_ReadListOutput" nillable="true" type="tns:EmployeePayHistory_ReadListOutput" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfEmployeePayHistory_ReadListOutput" nillable="true" type="tns:ArrayOfEmployeePayHistory_ReadListOutput" />
  <xs:complexType name="EmployeePayHistory_ReadListOutput">
    <xs:sequence>
      <xs:element minOccurs="0" name="PayFrequency" type="xs:int" />
      <xs:element minOccurs="0" name="Rate" type="xs:decimal" />
      <xs:element minOccurs="0" name="RateChangeDate" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="EmployeePayHistory_ReadListOutput" nillable="true" type="tns:EmployeePayHistory_ReadListOutput" />
</xs:schema>